package com.example.demo.mapper;

import com.example.demo.model.UserInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface UserMapper {

    //查找根据id查找用户
    public UserInfo getUserById(@Param("id") Integer id);


    //练习${}  #{}
    //(假设用户名唯一) 根据全名查询用户对象(非模糊查询)
    public UserInfo getUserByFullName(@Param("username") String username);


    //登陆功能
    public UserInfo login(@Param("username") String username,
                          @Param("password") String password);

    //修改方法(根据id修改用户名)
    public int update(@Param("id") Integer id,
                      @Param("username") String username);

    //删除用户(根据id删除)
    public int del(@Param("id") Integer id);

    //添加用户返回受影响函数
    public int add(UserInfo userInfo);

    //添加用户返回受影响行数和自增id
    public int addGetId(UserInfo userInfo);


    public List<UserInfo> getOrderList(@Param("order") String order);


    public UserInfo getUserAndArticleById(@Param("uid") Integer uid);

    //添加用户，添加用户时 photo是非必传参数
    public int add2(UserInfo userInfo);

    public int add3(UserInfo userInfo);

    public int update2(UserInfo userInfo);

    //批量遍历删除
    public int deleteByIds(List<Integer> list);




}
